/**
 * 
 */
package cl.duocap.refaxion.view.bean;

import java.io.Serializable;

import java.util.List;

import javax.annotation.PostConstruct;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;

import cl.duocap.refaxion.dto.TallerDTO;
import cl.duocap.refaxion.servicios.TallerService;

/**
 */
@ManagedBean(name = "mainTallerBean")
@SessionScoped
public class MainTallerBean implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	private static final TallerDTO TallerDTO = null;

	private List<TallerDTO> listaTallerIngresados;
	private TallerDTO eliminarTaller;
	private int idTaller;
	private String tallerDescripcion;
	private String direccion;
	private String telefono;
	private String correo;
	private int estado;
	private String fechaingreso;
	private int idTallerEliminar;
	@PostConstruct

	public void inicio() {
	eliminarTaller = new TallerDTO();
		
		if (FacesContext.getCurrentInstance().isPostback()) {
			return;
		}
	}

	public String listaTalleres() {

		try {

			TallerService taller = new TallerService();
			listaTallerIngresados = taller.obtenerTalleres();
			return "mainTaller.xhtml?faces-redirect=true";

		} catch (Exception e) {
			FacesContext.getCurrentInstance().addMessage(
					null,
					new FacesMessage(FacesMessage.SEVERITY_ERROR, e
							.getMessage(), e.getMessage()));
			System.out.println("errorLista Talleres");
			return null;
		}

	}

	public void listenerEliminarTaller(int idtallerE) {
		setIdTallerEliminar(idtallerE);
	}

	public String confirmarEliminarTaller() {

		try {

			TallerService taller = new TallerService();
			if (!taller.eliminarTaller(idTallerEliminar)) {
				return "mainTaller?faces-redirect=true";
			} else {
				return "mainTaller?faces-redirect=true";
			}

		} catch (Exception e) {
			FacesContext.getCurrentInstance().addMessage(
					null,
					new FacesMessage(FacesMessage.SEVERITY_ERROR, e
							.getMessage(), e.getMessage()));
			System.out.println("errorLista Talleres");
			return "error";
		}

	}

	public String listenerEditarTaller(String idTallerEditar) {

		String url = "/mantenedor/taller/formTallerEditar?faces-redirect=true&idTaller="
				+ idTallerEditar;
		return url;
	}

	public String listenerVerTaller(String idTallerVer) {

		String url = "/mantenedor/taller/formTallerVer?faces-redirect=true&idTaller="
				+ idTallerVer;
		return url;
	}

	public MainTallerBean() {

	}

	// metodos del main taller
	public int getIdTaller() {
		return idTaller;
	}

	public void setIdTaller(int idTaller) {
		this.idTaller = idTaller;
	}

	public String getTallerDescripcion() {
		return tallerDescripcion;
	}

	public void setTallerDescripcion(String tallerDescripcion) {
		this.tallerDescripcion = tallerDescripcion;
	}

	public String getDireccion() {
		return direccion;
	}

	public void setDireccion(String direccion) {
		this.direccion = direccion;
	}

	public String getTelefono() {
		return telefono;
	}

	public void setTelefono(String telefono) {
		this.telefono = telefono;
	}

	public String getCorreo() {
		return correo;
	}

	public void setCorreo(String correo) {
		this.correo = correo;
	}

	public int getEstado() {
		return estado;
	}

	public void setEstado(int estado) {
		this.estado = estado;
	}

	public String getFechaingreso() {
		return fechaingreso;
	}

	public void setFechaingreso(String fechaingreso) {
		this.fechaingreso = fechaingreso;
	}

	public TallerDTO getEliminarTaller() {
		return eliminarTaller;
	}

	public void setEliminarTaller(TallerDTO eliminarTaller) {
		this.eliminarTaller = eliminarTaller;
	}

	public List<TallerDTO> getListaTaller() {
		return listaTallerIngresados;
	}

	public void setListaTaller(List<TallerDTO> listaTaller) {
		this.listaTallerIngresados = listaTaller;
	}

	public int getIdTallerEliminar() {
		return idTallerEliminar;
	}

	public void setIdTallerEliminar(int idTallerEliminar) {
		this.idTallerEliminar = idTallerEliminar;
	}

	public static TallerDTO getTallerdto() {
		return TallerDTO;
	}

}
